package com.ydd.controller.user;


import com.ydd.dto.TagDTO;
import com.ydd.dto.TagPageQueryDto;
import com.ydd.entity.Tag;
import com.ydd.result.PageResult;
import com.ydd.result.Result;
import com.ydd.service.ITagService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

/**
 * <p>
 *  前端控制器
 * </p>
 *
 * @author hgz
 * @since 2023-05-30
 */
@Slf4j
@RestController
@RequestMapping("/admin/ydd_tag")
public class TagController {

    @Autowired
    private ITagService iTagService;

    //标签修改接口
    //  @ApiOperation("修改标签接口")
    @PostMapping("/update")
    public Result update(@RequestBody TagDTO tagDTO) {
        log.info("修改标签接口:{}",tagDTO);
        iTagService.updateTag(tagDTO);
        return Result.success();
    }


    //标签添加接口
    //@ApiOperation("添加标签接口")
    @PostMapping("/add")
    public Result add(@RequestBody TagDTO tagDTO) {
        log.info("增加标签接口:{}", tagDTO);
        iTagService.add(tagDTO);
        return Result.success();
    }


    //标签分页接口
    @GetMapping("/list")
    public Result<PageResult> list(TagPageQueryDto tagPageQueryDto) {
        log.info("标签分页接口:{}", tagPageQueryDto);
        //调用业务类查询标签分页数据
        PageResult pageResult = iTagService.pagelist(tagPageQueryDto);
        //返回数据
        return Result.success(pageResult);
    }

    //标签显示接口
    @GetMapping("/all")
    public Result all() {
        log.info("标签显示接口");
        //调用业务类
        List<Tag> list = iTagService.all();
        return Result.success(list);
    }


    //标签详情
    @GetMapping("/rowInfo")
    public Result rowInfo(Integer id) {
        log.info("标签详情接口:{}", id);
        //调用业务类
        Tag tag = iTagService.rowlnfo(id);
        return Result.success(tag);
    }

    //标签删除接口
    @GetMapping("/del")
    public Result del(Integer id){
        log.info("标签删除接口:{}",id);
        //调用业务类
        iTagService.del(id);
        return Result.success();
    }

}
